Formal semantics of natural languages